package com.gzhryc.pay.adaptation.weixin.msg.advance_pay;

import com.gzhryc.pay.adaptation.weixin.msg.WXPayAPIResponse;

import java.util.List;

public class WXPayAdvancePayQueryResponse extends WXPayAPIResponse {

	private static final long serialVersionUID = 1L;
	
	private String appid;
	private String mchid;
	private String out_order_no;	//商户服务订单号
	private String service_id;		//服务ID
	private String service_introduction;
	/*
	 * 表示当前单据状态
	 * 枚举值：
	 * CREATED：商户已创建服务订单；
	 * DOING：服务订单进行中；
	 * DONE：服务订单完成；
	 * REVOKED：商户取消服务订单； 
	 * EXPIRED：服务订单已失效，"商户已创建服务订单"状态超过30天未变动，则订单失效
	 */
	private String state;
	/*
	 * 对服务订单"进行中"状态的附加说明：
	 * USER_CONFIRM：用户确认
	 * MCH_COMPLETE：商户完结
	 */
	private String state_description;
	/*
	 * 总金额，大于等于0的数字，单位为分，只能为整数
	 * 此参数需满足：总金额=后付费项目金额之和-后付费商户优惠项目金额之和，且小于等于订单风险金额。取消订单时，该字段必须为0。
	 */
	private Integer total_amount;		//商户收款总金额
	private List<PostPaymentItem> post_payments;		//后付费项目
	private List<PostDiscountItem> post_discounts;
	private TimeRange time_range;
	private Location location;
	private RiskFund risk_fund;
	private String attach;
	private String notify_url;
	private String order_id;
	private Boolean need_collection;
	private Collection collection;
	
	public String getAppid() {
		return appid;
	}
	public void setAppid(String appid) {
		this.appid = appid;
	}
	public String getService_id() {
		return service_id;
	}
	public void setService_id(String service_id) {
		this.service_id = service_id;
	}
	public String getOut_order_no() {
		return out_order_no;
	}
	public void setOut_order_no(String out_order_no) {
		this.out_order_no = out_order_no;
	}
	public String getMchid() {
		return mchid;
	}
	public void setMchid(String mchid) {
		this.mchid = mchid;
	}
	public String getService_introduction() {
		return service_introduction;
	}
	public void setService_introduction(String service_introduction) {
		this.service_introduction = service_introduction;
	}
	public String getState() {
		return state;
	}
	public void setState(String state) {
		this.state = state;
	}
	public String getState_description() {
		return state_description;
	}
	public void setState_description(String state_description) {
		this.state_description = state_description;
	}
	public Integer getTotal_amount() {
		return total_amount;
	}
	public void setTotal_amount(Integer total_amount) {
		this.total_amount = total_amount;
	}
	public List<PostPaymentItem> getPost_payments() {
		return post_payments;
	}
	public void setPost_payments(List<PostPaymentItem> post_payments) {
		this.post_payments = post_payments;
	}
	public List<PostDiscountItem> getPost_discounts() {
		return post_discounts;
	}
	public void setPost_discounts(List<PostDiscountItem> post_discounts) {
		this.post_discounts = post_discounts;
	}
	public TimeRange getTime_range() {
		return time_range;
	}
	public void setTime_range(TimeRange time_range) {
		this.time_range = time_range;
	}
	public Location getLocation() {
		return location;
	}
	public void setLocation(Location location) {
		this.location = location;
	}
	public RiskFund getRisk_fund() {
		return risk_fund;
	}
	public void setRisk_fund(RiskFund risk_fund) {
		this.risk_fund = risk_fund;
	}
	public String getAttach() {
		return attach;
	}
	public void setAttach(String attach) {
		this.attach = attach;
	}
	public String getNotify_url() {
		return notify_url;
	}
	public void setNotify_url(String notify_url) {
		this.notify_url = notify_url;
	}
	public String getOrder_id() {
		return order_id;
	}
	public void setOrder_id(String order_id) {
		this.order_id = order_id;
	}
	public Boolean getNeed_collection() {
		return need_collection;
	}
	public void setNeed_collection(Boolean need_collection) {
		this.need_collection = need_collection;
	}
	public Collection getCollection() {
		return collection;
	}
	public void setCollection(Collection collection) {
		this.collection = collection;
	}
	public static long getSerialversionuid() {
		return serialVersionUID;
	}
}
